#include "omron_float.h"


OmronFloat::OmronFloat(QString ParentName, QString MyName, QWidget *parent)
  : OmronWidget(ParentName, MyName, parent )

 {
//    qDebug()<<"OmronFloat: My name = "<<this->objectName();
 }

void OmronFloat::EnterDigit(char Str)
{
    qDebug()<<"OmronFloat: EnterDigit"<<Str;
}


bool OmronFloat::eventFilter(QObject *obj, QEvent *e)
{
    if( e->type() == QEvent::KeyPress )
    {
        QKeyEvent *keyEvent = static_cast< QKeyEvent * >(e);
        switch( keyEvent->key() )
        {
            case '\t': keyEvent->ignore();
            case Qt::Key_0: EnterDigit('0'); break;
            case Qt::Key_1: EnterDigit('1'); break;
            case Qt::Key_2: EnterDigit('2'); break;
            case Qt::Key_3: EnterDigit('3'); break;
            case Qt::Key_4: EnterDigit('4'); break;
            case Qt::Key_5: EnterDigit('5'); break;
            case Qt::Key_6: EnterDigit('6'); break;
            case Qt::Key_7: EnterDigit('7'); break;
            case Qt::Key_8: EnterDigit('8'); break;
            case Qt::Key_9: EnterDigit('9'); break;
//            case Qt::Key_Enter:
//                    if (getType() == NumFloat || getType() == Count || getType() == NumInt)
//                    {
//                        EnterData();
//                        _State=WaitSend;
//                        Draw();
//                     }
//                    break;
//            case 16777220:
//                    if (getType() == NumFloat || getType() == Count || getType() == NumInt)
//                    {
//                        EnterData();
//                        _State=WaitSend;
//                        Draw();
//                    }
//                    break; //enter ntb
//            case Qt::Key_Backspace:
//            if (getType() == NumFloat || getType() == NumInt )
//                setText(getText().remove(getText().length()-1,1));
//            break;
            case Qt::Key_Escape:  EnterDigit('E');/*CancelEnter();*/ break;
//            case Qt::Key_Minus: EnterDigit('-'); break;
            case Qt::Key_Down: emit nextFieldSig(); break;
            case Qt::Key_Up:   emit prevFieldSig(); break;
//            case Qt::Key_Right: IncVal(); break;
//            case Qt::Key_Left: DecVal(); break;
//            case Qt::Key_F1: emit nextField(700); break;
//            case Qt::Key_F2: emit nextField(701); break;
//            case Qt::Key_F3: emit nextField(702); break;
//            case Qt::Key_F4: emit nextField(703); break;
//            case Qt::Key_F5: emit nextField(704); break;
//            case Qt::Key_F6: emit nextField(705); break;
            case Qt::Key_Comma : EnterDigit('.'); break;
            case Qt::Key_Period: EnterDigit('.'); break;
            default:
                keyEvent->accept();
        }
        //emit error_sig (ErrCodePack(ERR_AUTO_MAN_VAL, ));
        return true;
    }
    return QObject::eventFilter(obj, e);
}

